package tptecnicas.logging;

import tptecnicas.logging.filters.Filter;

/**
 * Interfaz que provee la libreria para el correcto manejo de cada 
 * Logger, dentro de la aplicacion a utilizar.
 */
public interface Logger {

	public void logMessage(String level, String message);
	public void logMessageWithException(String level, String message, Throwable ex);
	public void configureNewFileWriter(String target, String level, String formatpattern);
	public void configureConsoleWriter(String level,  String formatpattern);
	public void configureNewCustomWriter(String customWriterStructure, String level, String fomatpattern);
	public void deactivateFileWriter(String fileTarget);
	public void deactivateConsoleWriter();
	public void activateFileWriter(String fileTarget);
	public void activateConsoleWriter();	
	public void setSeparator(String separator);
	public String getLoggerName();
	public void addFilter(Filter filter);
	public boolean isLevelEnabled(String string);
}
